package user;

import openation.ShowOperation;
import openation.*;

import java.util.Scanner;

/**
 * 实现管理员操作界面AdminUesr类，继承父类User
 * 创建带有一个参数的构造方法初始化父类成员和构造自己的成员
 * 1构造方法的参数name，super（name）帮助父类构造的构造
 * 2this引用当前对象，初始化IOperation[]类型的数组里面的数据
 * 3数组里面创建对应用户的操作的对象，（关键一步，把用户和对应的操作关联起来了）
 * 4重写menu（）方法，返回值为整型，里面输出管理员用户可以操作的对应信息
 * 5输入一个数，返回输入的数。
 */
public class AdminUesr extends User{

    public AdminUesr(String name) {
        super(name);
        this.iOperations = new IOperation[] {
                new ExitOperation(),
                new FindOperation(),
                new ShowOperation(),
                new AddOperation(),
                new DeleteOperation()
        };
    }
    public int menu() {
        System.out.println("-------------------------------------------------------");
        System.out.println("-------------------------------------------------------");
        System.out.println("欢迎进入图书管理系统" + "   " + this.name);
        System.out.println("1--查找图书");
        System.out.println("2--显示图书");
        System.out.println("3--新增图书");
        System.out.println("4--删除图书");
        System.out.println("0--退出图书管理系统");
        System.out.println("-------------------------------------------------------");
        System.out.println("-------------------------------------------------------");
        System.out.println("请输入你的操作:");
        Scanner scanner = new Scanner(System.in);
        int choice = scanner.nextInt();
        return choice;
    }
}
